home *** CD-ROM | disk | FTP | other *** search
/ TeX 1995 July / TeX CD-ROM July 1995 (Disc 1)(Walnut Creek)(1995).ISO / macros / latex209 / contrib / feynman / fermionsetup.tex < prev    next >
Text File  |  1992-07-02  |  2KB  |  45 lines

  1. %                        FERMIONSETUP(7).TEX
  2. %  CALLED BY FEYNMAN(34).TEX.
  3. % USED FOR GENERATING FERMION LINES IN FEYNMAN DIAGRAMS IN LATEX.
  4. \global\newcount\fermionlength  %  THE TOTAL FERMION LINE LENGTH.
  5. \global\newcount\fermionlengthx
  6. \global\newcount\fermionlengthy
  7. \global\newcount\fermionfrontx  %}(x,y) co-ord of left of fermion
  8. \global\newcount\fermionfronty  %}
  9. \global\newcount\fermionbackx
  10. \global\newcount\fermionbacky
  11. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  12. \gdef\ALLfermion{  % READ IN FROM FEYNMAN \selectfermion
  13. \global\fermionfrontx=\particlefrontx \global\fermionfronty=\particlefronty
  14. % Error messages for overly-long lines.  See FEYNMAN for negative-lengths.
  15. \ifnum\unitboxnumber > 50000
  16. \message{   *** WARNING *** Fermion of length
  17. \the\unitboxnumber\space requested ***   }
  18. \ifnum\unitboxnumber > 80000
  19. \message{   *** Reducing fermion length to 30000 (max 80000) ***   }
  20. \global\unitboxnumber=30000 \fi \fi  % end of length error
  21. \global\fermionlength=\unitboxnumber % The TOTAL line length
  22. \global\particleadjustx=0   \global\particleadjusty=0 %Default
  23. \global\numlineparts = 1    \global\numupperunits=1
  24. \global\upperlineadjx=-200  \global\upperlineadjy=0
  25. \global\fermionlengthx=\fermionlength    \global\fermionlengthy=\fermionlength
  26. \gslanttest(\fermionlengthx,\fermionlengthy)  % See FEYNMAN22.TEX (FOR \XDIR).
  27. \global\multiply\fermionlengthx by \XDIR  %  In keeping with photons and gluons.
  28. \global\multiply\fermionlengthy by \YDIR  %  In keeping with photons and gluons.
  29. \global\unitboxheight=\fermionlengthy   \global\unitboxwidth=\fermionlengthx   
  30. \global\advance \fermionlengthx by \particleadjustx
  31. \global\advance \fermionlengthy by \particleadjusty
  32. \global\particlelengthx=\fermionlengthx
  33. \global\particlelengthy=\fermionlengthy  
  34. \boxlengthdefault    \rearcoords    \midcoords
  35. \global\fermionbackx=\particlebackx     \global\fermionbacky=\particlebacky
  36. \ifcase\LINECONFIGURATION  %\REG case
  37. \ifnum\XDIR=0 
  38. \gdef\upperunitbox{\line(\XDIR,\YDIR){\boxlengthy}} %\N or \S
  39. \else
  40. \gdef\upperunitbox{\line(\XDIR,\YDIR){\boxlengthx}}
  41. \fi
  42. \else \UNIMPERROR
  43. \fi
  44. }
  45.